/*
 * @lc app=leetcode.cn id=977 lang=javascript
 *
 * [977] 有序数组的平方
 */

// @lc code=start
/**
 * @param {number[]} nums
 * @return {number[]}
 */
var sortedSquares = function(nums) {
  // nums = nums.map(item => item * item)
  // nums = nums.sort((item1, item2) => {
  //   return item1 < item2 ? -1 : 1
  // })
  // return nums
  let left = 0
  let right = nums.length - 1
  let newNums = []
  while (left <= right) {
    const leftValue = Math.abs(nums[left])
    const rightValue = Math.abs(nums[right])
    if (rightValue >= leftValue) {
      newNums.unshift(rightValue * rightValue)
      right--
    } else {
      newNums.unshift(leftValue * leftValue)
      left++
    }
  }
  return newNums
}
// @lc code=end

